home *** CD-ROM | disk | FTP | other *** search
Text File | 1995-01-21 | 983 b | 48 lines | [TEXT/CWIE] |
- unit MyEthernet;
-
- interface
-
- uses
- Types, Devices;
-
- type
- ethernetAddress = packed array[0..5] of byte;
-
- function OpenEthernetDriver (var ern: integer): OSErr;
- function GetEthernetAddress (ern: integer; var addr: ethernetAddress): OSErr;
-
- implementation
-
- uses
- ENET;
-
- function OpenEthernetDriver (var ern: integer): OSErr;
- var
- err: OSErr;
- begin
- err := OpenDriver('.ENET', ern);
- if err <> noErr then begin
- err := OpenDriver('.ENET0', ern); (* check for SCSI Ethernet devices *)
- end; (* if *)
- OpenEthernetDriver := err;
- end;
-
- function GetEthernetAddress (ern: integer; var addr: ethernetAddress): OSErr;
- var
- err: OSErr;
- buffer: packed array[0..77] of byte;
- pb: EParamBlock;
- i: integer;
- begin
- pb.ioRefNum := ern;
- pb.csCode := ENetGetInfo;
- pb.ePointer := @buffer;
- pb.eBuffSize := sizeof(buffer);
- err := EGetInfo(@pb, false);
- if err = noErr then begin
- BlockMove(@buffer, @addr, 6);
- end;
- GetEthernetAddress := err;
- end;
-
- end.